package com.bcmusic.user.pojo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

/****
 * @Author:admin
 * @Description:UserIdentification构建
 * @Date 2019/6/14 19:13
 *****/
@ApiModel(description = "UserIdentification",value = "UserIdentification")
@Table(name="user_identification")
public class UserIdentification implements Serializable{

	@ApiModelProperty(value = "普通用户身份认证记录id。记录在提交身份认证/修改申请的时候创建。",required = false)
	@Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "identification_id")
	private Long identificationId;//普通用户身份认证记录id。记录在提交身份认证/修改申请的时候创建。

	@ApiModelProperty(value = "普通用户编号。关联user_ordinary表的user_number字段。",required = false)
    @Column(name = "user_ordinary_number")
	private String userOrdinaryNumber;//普通用户编号。关联user_ordinary表的user_number字段。

	@ApiModelProperty(value = "普通用户真实姓名。",required = false)
    @Column(name = "user_ordinary_name")
	private String userOrdinaryName;//普通用户真实姓名。

	@ApiModelProperty(value = "普通用户身份证号。香港等某些地区的身份证号长度在18位以内。",required = false)
    @Column(name = "id_card_number")
	private String idCardNumber;//普通用户身份证号。香港等某些地区的身份证号长度在18位以内。

	@ApiModelProperty(value = "普通用户银行卡号。银行卡号长度一般在13-19位，国际上也有12位的。",required = false)
    @Column(name = "bank_card_id")
	private String bankCardId;//普通用户银行卡号。银行卡号长度一般在13-19位，国际上也有12位的。

	@ApiModelProperty(value = "普通用户地址。",required = false)
    @Column(name = "user_ordinary_location")
	private String userOrdinaryLocation;//普通用户地址。

	@ApiModelProperty(value = "普通用户邮箱。用来接收通知。",required = false)
    @Column(name = "user_ordinary_mail")
	private String userOrdinaryMail;//普通用户邮箱。用来接收通知。

	@ApiModelProperty(value = "普通用户身份认证状态。0默认为未申请，1为待审核，2为已认证，-1为已驳回，-2为已废除。任意类型管理员修改普通用户的信息都默认为已认证状态。",required = false)
    @Column(name = "valid_status")
	private Integer validStatus;//普通用户身份认证状态。0默认为未申请，1为待审核，2为已认证，-1为已驳回，-2为已废除。任意类型管理员修改普通用户的信息都默认为已认证状态。


	@ApiModelProperty(value = "提交者编号。默认为提交认证/修改申请的普通用户或管理员编号，任意类型管理员修改普通用户信息时，申请者为该管理员。",required = false)
    @Column(name = "submitter_number")
	private String submitterNumber;//提交者编号。默认为提交认证/修改申请的普通用户或管理员编号，任意类型管理员修改普通用户信息时，申请者为该管理员。

	@ApiModelProperty(value = "审核者编号。此处为任意类型的管理员。",required = false)
    @Column(name = "auditor_number")
	private String auditorNumber;//审核者编号。此处为任意类型的管理员。

	@ApiModelProperty(value = "提交认证/修改申请时间。",required = false)
    @Column(name = "submit_time")
	private Date submitTime;//提交认证/修改申请时间。

	@ApiModelProperty(value = "审核认证/修改申请时间。",required = false)
    @Column(name = "check_time")
	private Date checkTime;//审核认证/修改申请时间。

	@ApiModelProperty(value = "用户头像",required = false)
    @Column(name = "profile_photo")
	private String profilePhoto;//用户头像



	//get方法
	public Long getIdentificationId() {
		return identificationId;
	}

	//set方法
	public void setIdentificationId(Long identificationId) {
		this.identificationId = identificationId;
	}
	//get方法
	public String getUserOrdinaryNumber() {
		return userOrdinaryNumber;
	}

	//set方法
	public void setUserOrdinaryNumber(String userOrdinaryNumber) {
		this.userOrdinaryNumber = userOrdinaryNumber;
	}
	//get方法
	public String getUserOrdinaryName() {
		return userOrdinaryName;
	}

	//set方法
	public void setUserOrdinaryName(String userOrdinaryName) {
		this.userOrdinaryName = userOrdinaryName;
	}
	//get方法
	public String getIdCardNumber() {
		return idCardNumber;
	}

	//set方法
	public void setIdCardNumber(String idCardNumber) {
		this.idCardNumber = idCardNumber;
	}
	//get方法
	public String getBankCardId() {
		return bankCardId;
	}

	//set方法
	public void setBankCardId(String bankCardId) {
		this.bankCardId = bankCardId;
	}
	//get方法
	public String getUserOrdinaryLocation() {
		return userOrdinaryLocation;
	}

	//set方法
	public void setUserOrdinaryLocation(String userOrdinaryLocation) {
		this.userOrdinaryLocation = userOrdinaryLocation;
	}
	//get方法
	public String getUserOrdinaryMail() {
		return userOrdinaryMail;
	}

	//set方法
	public void setUserOrdinaryMail(String userOrdinaryMail) {
		this.userOrdinaryMail = userOrdinaryMail;
	}
	//get方法
	public Integer getValidStatus() {
		return validStatus;
	}

	//set方法
	public void setValidStatus(Integer validStatus) {
		this.validStatus = validStatus;
	}
	//get方法
	public String getSubmitterNumber() {
		return submitterNumber;
	}

	//set方法
	public void setSubmitterNumber(String submitterNumber) {
		this.submitterNumber = submitterNumber;
	}
	//get方法
	public String getAuditorNumber() {
		return auditorNumber;
	}

	//set方法
	public void setAuditorNumber(String auditorNumber) {
		this.auditorNumber = auditorNumber;
	}
	//get方法
	public Date getSubmitTime() {
		return submitTime;
	}

	//set方法
	public void setSubmitTime(Date submitTime) {
		this.submitTime = submitTime;
	}
	//get方法
	public Date getCheckTime() {
		return checkTime;
	}

	//set方法
	public void setCheckTime(Date checkTime) {
		this.checkTime = checkTime;
	}
	//get方法
	public String getProfilePhoto() {
		return profilePhoto;
	}

	//set方法
	public void setProfilePhoto(String profilePhoto) {
		this.profilePhoto = profilePhoto;
	}


}
